]> dgit.raspbian.org Git - gnome-shell.git/commit
Add a PolicyKit authentication agent
authorDavid Zeuthen <davidz@redhat.com>
Mon, 21 Feb 2011 17:17:34 +0000 (12:17 -0500)
committerDavid Zeuthen <davidz@redhat.com>
Tue, 22 Feb 2011 20:13:56 +0000 (15:13 -0500)
commit86b925a294aaaf9f5f3936e060294273cafbb40e
treec71e909e869a767c693fdbf50a60f597032f253e
parent1fcfadd53ce5f5d18eabfa655ffa3c022614f58d
Add a PolicyKit authentication agent

A PolicyKit Authentication Agent is a construct used to authenticate
one or more identities. See the PolicyKit documentation for more
details on authentication agents and how PolicyKit works:

    http://hal.freedesktop.org/docs/polkit/

Since gjs does not support subclassing a GObject class from Javascript
code, we bring in a native class to bridge the VFuncs to GObject
signals. Additionally, this native class also queues up authentication
requests so the user of the native class only has to deal with a
single outstanding request at any one time.

The file js/ui/polkitAuthenticationAgent.js introduces a singleton
that listens for authentication requests via the native class. This
singleton uses the PolkitAgent machinery to do the actual heavy-weight
lifting required for authentication (essentially a PAM conversation).

We currently don't allow the user to pick the identity to be
authenticated.

https://bugzilla.gnome.org/show_bug.cgi?id=642886

Signed-off-by: David Zeuthen <davidz@redhat.com>
configure.ac
data/theme/gnome-shell.css
js/Makefile.am
js/ui/main.js
js/ui/polkitAuthenticationAgent.js [new file with mode: 0644]
src/Makefile.am
src/shell-marshal.list
src/shell-polkit-authentication-agent.c [new file with mode: 0644]
src/shell-polkit-authentication-agent.h [new file with mode: 0644]